import java.util.List;

public class ShoppingCartManager {

    // 将商品加入购物车的方法
    public static void addToCart(User user, Product product, int quantity, ShoppingCart cart) {
        // 首先检查用户是否为空
        if (user == null) {
            System.out.println("无法将商品加入购物车，用户未登录。");
            return;
        }

        // 检查商品是否为空
        if (product == null) {
            System.out.println("无法将空商品加入购物车。");
            return;
        }

        // 检查购物车是否为空
        if (cart == null) {
            System.out.println("无法将商品加入购物车，购物车不存在。");
            return;
        }

        // 执行将商品加入购物车的操作
        cart.addToCart(product, quantity);

        // 输出加入购物车的信息
        System.out.println(user.getUsername() + " 将 " + quantity + " 个 " + product.getName() + " 加入了购物车。");
    }

    public static void main(String[] args) {
        // 示例用法
        User user = new User("Alice", "Alice0.1234","alice@example.com");
        ShoppingCart cart = new ShoppingCart(user);

        Product laptop = new Product(   "Laptop", 999.99,1000);
        addToCart(user, laptop, 1, cart);

        Product phone = new Product("Smartphone", 599.99,20000);
        addToCart(user, phone, 2, cart);

        // 获取购物车中的商品列表
        List<Product> cartItems = cart.getCartItems();
        System.out.println("购物车中的商品：");
        for (Product item : cartItems) {
            System.out.println(item.getName() + " - ￥" + item.getPrice());
        }
    }
}
